
package net.mappoint.s.mappoint_30;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;


/**
 * <p>Java class for FindFilter complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType name="FindFilter">
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="EntityTypeName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="PropertyNames" type="{http://s.mappoint.net/mappoint-30/}ArrayOfString" minOccurs="0"/>
 *         &lt;element name="WhereClause" type="{http://s.mappoint.net/mappoint-30/}WhereClause" minOccurs="0"/>
 *         &lt;element name="SortProperties" type="{http://s.mappoint.net/mappoint-30/}ArrayOfSortProperty" minOccurs="0"/>
 *         &lt;element name="Expression" type="{http://s.mappoint.net/mappoint-30/}FilterExpression" minOccurs="0"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "FindFilter", propOrder = {
    "entityTypeName",
    "propertyNames",
    "whereClause",
    "sortProperties",
    "expression"
})
public class FindFilter {

    @XmlElement(name = "EntityTypeName")
    protected String entityTypeName;
    @XmlElement(name = "PropertyNames")
    protected ArrayOfString propertyNames;
    @XmlElement(name = "WhereClause")
    protected WhereClause whereClause;
    @XmlElement(name = "SortProperties")
    protected ArrayOfSortProperty sortProperties;
    @XmlElement(name = "Expression")
    protected FilterExpression expression;

    /**
     * Gets the value of the entityTypeName property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getEntityTypeName() {
        return entityTypeName;
    }

    /**
     * Sets the value of the entityTypeName property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setEntityTypeName(String value) {
        this.entityTypeName = value;
    }

    /**
     * Gets the value of the propertyNames property.
     * 
     * @return
     *     possible object is
     *     {@link ArrayOfString }
     *     
     */
    public ArrayOfString getPropertyNames() {
        return propertyNames;
    }

    /**
     * Sets the value of the propertyNames property.
     * 
     * @param value
     *     allowed object is
     *     {@link ArrayOfString }
     *     
     */
    public void setPropertyNames(ArrayOfString value) {
        this.propertyNames = value;
    }

    /**
     * Gets the value of the whereClause property.
     * 
     * @return
     *     possible object is
     *     {@link WhereClause }
     *     
     */
    public WhereClause getWhereClause() {
        return whereClause;
    }

    /**
     * Sets the value of the whereClause property.
     * 
     * @param value
     *     allowed object is
     *     {@link WhereClause }
     *     
     */
    public void setWhereClause(WhereClause value) {
        this.whereClause = value;
    }

    /**
     * Gets the value of the sortProperties property.
     * 
     * @return
     *     possible object is
     *     {@link ArrayOfSortProperty }
     *     
     */
    public ArrayOfSortProperty getSortProperties() {
        return sortProperties;
    }

    /**
     * Sets the value of the sortProperties property.
     * 
     * @param value
     *     allowed object is
     *     {@link ArrayOfSortProperty }
     *     
     */
    public void setSortProperties(ArrayOfSortProperty value) {
        this.sortProperties = value;
    }

    /**
     * Gets the value of the expression property.
     * 
     * @return
     *     possible object is
     *     {@link FilterExpression }
     *     
     */
    public FilterExpression getExpression() {
        return expression;
    }

    /**
     * Sets the value of the expression property.
     * 
     * @param value
     *     allowed object is
     *     {@link FilterExpression }
     *     
     */
    public void setExpression(FilterExpression value) {
        this.expression = value;
    }

}
